package com.mingzhi.product.controller;

import com.alibaba.cloud.nacos.discovery.NacosServiceDiscovery;
import com.alibaba.nacos.api.exception.NacosException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;


@RestController
public  class  ConsumerController {
    @Autowired
    private  RestTemplate restTemplate;
    @Autowired
    private  NacosServiceDiscovery serviceDiscovery;
    @GetMapping(value = "/nacos/consumer/{str}")
    public  String getService(@PathVariable("str") String str) throws
            NacosException {
//从Nacos中获取服务地址
        ServiceInstance serviceInstance =
                serviceDiscovery.getInstances("service-order").get(0);
        String url = serviceInstance.getHost() + ":" +
                serviceInstance.getPort();
        return  restTemplate.getForObject("http://" + url + "/api/order/nacos/service/"+
                str, String.class );
    }
}
